easypeasy, отловить количество излишек здоровья никак не получится, но можно проверять, есть ли у юнита бафф. Так как этого баффа нет в редакторе, то к нему можно обращаться только через Jass.
Я протестировал способность, и вот, что заметил: ни текущее, ни максимальное здоровье не изменяются от этой способности. При использовании заклинания на юнита накладывается бафф, который позволяет ему увеличить свое здоровье выше максимального. Этот бафф исчезает только тогда, когда герой истратил излишки здоровья. Самого же баффа в редакторе почему-то не существует, но к нему можно обратиться через триггеры. Bdbl — название баффа.
Способность отражает урон в оригинальных картах сражения во всех версиях игры, хоть и не работает в кампаниях. Перестает она отражать урон только в том случае, если появилась надпись "Эта карта больше не подходит для режима сражения", хотя в константах будет до сих пор показываться True. Достаточно сохранить карту и зайти в нее заново — тогда там будет стоять False. Либо же можно поставить в наборе игровых: "Сражение (последняя версия)", и тогда способность вновь станет отражать урон, но весь баланс на карте начнет меняться в зависимости от версии игры.
Способность не багнутая — просто она выключается во всех картах, которые не подходят для режима сражения. Видимо, создатели решили, что в кампаниях она слишком сильная.
Ее там нет, т.к. способность геройская. Твой юнит герой или простой воин? Если герой, то ему нужно давать способность через "Способности - Герой". Если же нет, то создавай способность на основе Благодати и убери здесь галочку:
У тебя герой сохраняется с именем Paladin в категории Paladin, а загружается с именем Паладин из категории Паладин. Конечно, у тебя не будет загружаться. Используй в загрузке такие же имена, как и в сохранении.
Я пока вижу только проблему, когда в одну цель несколько похищений.
Да. Ему много всего нужно учитывать при этом (например, равномерное распределение, первый кастер дамажит других и т.д.), поэтому это заклинание сложное.
То есть в "То - Действия" нужно после всех моих действий там вписывать Skip remaining actions, чтобы оно пропускало "Иначе - действия", т.к там у меня ничего нет. Да ?
Нет. Это нужно для того, чтобы после выполнения одного if/then/else триггер завершал свое действие, а не продолжал сравнивать оставшиеся. Из-за этого в некоторых случаях может сработать несколько конструкций if/then/else.
Делал заклинание и хотел сделать множественное применение, но возникла проблема хранения всех целей на кастере и всех кастеров на цели.
Здесь написано про хранение целей, а не молний. Я не знаю, на что способен Lua, но это заклинание, я уверен, можно сделать и без Lua, просто займет оно очень много времени и сил, т.к. оно слишком громоздкое и учитывает много всего.
В первую очередь, объединять похожие триггеры нужно для своего же удобства, ведь гораздо лучше, когда на карте 50 триггеров, а не 100. Раз у тебя происходили баги из-за множества триггеров, то тогда тем более. У тебя на скриншотах ожидание 0.05 секунд. За это время constructed structure может быть заменено на другого юнита. Поменяй на triggering unit, чтобы не возникало багов.
Делал заклинание и хотел сделать множественное применение, но возникла проблема хранения всех целей на кастере и всех кастеров на цели.
Это можно сделать через сохранение групп в хеш-таблицу.
Плюс ещё кучу всего, чтоб равномерно распределять хп между всеми применившими заклинание.
В смысле, равномерно? А изначально там неравномерное распределение?
Притом хотел ещё учесть такой вариант, что если два кастера применяют заклинание у одной цели, то первый применивший дамажил второго. Тут то мне таблиц и нехватило.
Можно записывать кастера в хеш-таблицу с хэндлом цели. Если кто-то еще применит заклинание, то проверить, есть ли в хеш-таблице кастер. Если да, то начать нанесение урона. Или же это можно сделать через запись группы в хеш-таблицу с хэндлом цели. При применении заклинания проверять, сколько в группе кастеров. В любом случае, заклинание не из простых, поэтому думать придется много.
NazarPunk, почему? Везде, где использовал, отлично работали. В той наработке, которую я сделал, они работали так, как нужно, хоть там и не таймер. Хеш-таблица — универсальный хранитель информации.
Я посмотрел, но возникла проблема. Я тупой и не могу написать также, но моменте добаления юнита в хеш таблицу. Я Save Handle of (Last created unit) as 0 of (а дальше я не нашёл, как добавть "Key(Constructed structure))" in Hash
и соответсвенно любое другое действие, где прописанно Key
Так не нужно ничего самому делать. Я прикрепил к тому сообщению карту. В ней я уже все сделал сам. Тебе осталось только скопировать триггеры оттуда в свою карту и заменить юнитов на тех, которые тебе нужны. Вот та карта:
ArhiMEN, посмотри мою наработку в предыдущем вопросе. У тебя может быть хоть 100 зданий на карте — она будет работать в любом случае, т.к. юниты записываются и читаются из хеш-таблицы по хэндлу здания.
NazarPunk, он не писал о том, что у него будут создаваться новые юниты. Если же он хочет расположить юнитов в определенных местах вокруг здания, то ему в любом случае придется обращаться к каждому из них.
А что касается нового вопроса, то у него в нем описана своя система, так что я сомневаюсь, что он вообще смотрел мою наработку.
» Серия кампаний "Паладин" / Паладин
» WarCraft 3 / Как отловить добавленное здоровье?
Ред. Black Soul
» WarCraft 3 / Как отловить добавленное здоровье?
Ред. Black Soul
» WarCraft 3 / Как сделать так, чтобы некоторые герои не двигались 25 секунд??
Ред. Black Soul
» WarCraft 3 / Цель способности
Ред. Black Soul
» WarCraft 3 / Благословение Элуны
Ред. Black Soul
» WarCraft 3 / Возможные способности для героя
» WarCraft 3 / Перенос героя
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
» WarCraft 3 / Нужно ли собирать триггеры с одинаковым условием в один
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
NazarPunk: Здесь написано про хранение целей, а не молний.
Я не знаю, на что способен Lua, но это заклинание, я уверен, можно сделать и без Lua, просто займет оно очень много времени и сил, т.к. оно слишком громоздкое и учитывает много всего.
Ред. Black Soul
» WarCraft 3 / Нужно ли собирать триггеры с одинаковым условием в один
Ред. Black Soul
» WarCraft 3 / Нужно ли собирать триггеры с одинаковым условием в один
У тебя на скриншотах ожидание 0.05 секунд. За это время constructed structure может быть заменено на другого юнита. Поменяй на triggering unit, чтобы не возникало багов.
Ред. Black Soul
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
В любом случае, заклинание не из простых, поэтому думать придется много.
» WarCraft 3 / Карты WC3TFT
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
Функции? Их разве можно вообще куда-либо сохранять?
» WarCraft 3 / Карты WC3TFT
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
Ред. Black Soul
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
Ред. Black Soul
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
» WarCraft 3 / Хеш-таблица
А что касается нового вопроса, то у него в нем описана своя система, так что я сомневаюсь, что он вообще смотрел мою наработку.
» WarCraft 3 / Передвижение юнитов через спел на Хеш-таблице
» WarCraft 3 / Хеш-таблица